class Painter {
  int? line = 0;
  paint() {
    print('$line');
  }
}

class Vector extends Painter{
  @override
  int get line => (super.line ?? 0) + 1;
  @override
  paint() {
    print("$line");

  }
}

class Vector2 implements Painter {
  @override
  int? line;

  @override
  paint() {
    print("$line");

  }
}

class Vector3 with Painter {}


void main() {
  Vector vector = Vector();
  Vector2 vector2 = Vector2();
  Vector3 vector3 = Vector3();
  vector.paint();
  vector2.paint();
  vector3.paint();
}